<!DOCTYPE html>
<html>

<head lang="en">
    <meta charset="UTF-8">
    <title>注册</title>
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport"
          content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
    <meta name="format-detection" content="telephone=no">
    <meta name="renderer" content="webkit">
    <meta http-equiv="Cache-Control" content="no-siteapp"/>

    <link rel="stylesheet" href="./AmazeUI-2.4.2/assets/css/amazeui.min.css"/>
    <link href="./css/dlstyle.css" rel="stylesheet" type="text/css">
    <script src="./AmazeUI-2.4.2/assets/js/jquery.min.js"></script>
    <script src="./AmazeUI-2.4.2/assets/js/amazeui.min.js"></script>
    <!--引入vue和axios-->
    <script src="./js/plugins/axios.js"></script>
    <script src="./js/plugins/vue.js"></script>
    <script src="js/index.js"></script>
    <link rel="stylesheet" href="css/index.css">



</head>
<script>
    //配置axios的前缀
    axios.defaults.baseURL = 'http://localhost:8080/'
    //把axios配置为全局变量
    Vue.prototype.$http = axios //给Vue这个类添加一个原型的属性,这个类的对象都能调用
    //屏蔽vue的警告
    Vue.config.productionTip = false
</script>

<body>
	<div id="app">
    <div class="login-boxtitle">
        <a href="home/demo.html"><img alt="" src="./images/logobig.png"/></a>
    </div>

    <div class="res-banner">
        <div class="res-main">
            <div class="login-banner-bg"><span></span><img src="./images/big.jpg"/></div>
            <div class="login-box">

                <div class="am-tabs" id="doc-my-tabs">
                    <ul class="am-tabs-nav am-nav am-nav-tabs am-nav-justify">
                        <li class="am-active"><a href="">邮箱注册</a></li>
                        <li><a href="">手机号注册</a></li>
                    </ul>

                    <div class="am-tabs-bd">
                        <!--邮箱注册-->
                        <div class="am-tab-panel am-active">
                            <form method="post">

                                <div class="user-email">
                                    <label for="email"><i class="am-icon-envelope-o"></i></label>
                                    <input type="email" name="" v-model="emailUserForm.email" id="email" placeholder="请输入邮箱账号">
                                </div>

                                <div class="verification">
                                    <label for="code"><i class="am-icon-code-fork"></i></label>
                                    <input type="tel" name="" v-model="emailUserForm.code" id="code" placeholder="请输入验证码">
                                    <a class="btn" href="javascript:void(0);" @click="sendEmailCode"
                                       id="sendMobileCode">
                                        <span id="dyMobileButton">获取</span></a>
                                </div>

                                <div class="user-pass">
                                    <label for="password"><i class="am-icon-lock"></i></label>
                                    <input type="password" name="" v-model="emailUserForm.password" id="password" placeholder="设置密码">
                                </div>
                                <div class="user-pass">
                                    <label for="passwordRepeat"><i class="am-icon-lock"></i></label>
                                    <input type="password" name="" v-model="emailUserForm.passwordRepeat" id="passwordRepeat" placeholder="确认密码">
                                </div>

                            </form>

                            <div class="login-links">
                                <label for="reader-me">
                                    <input id="reader-me" v-model="emailUserForm.flag" type="checkbox"> 点击表示您同意商城《服务协议》
                                </label>
                            </div>
                            <div class="am-cf">
                                <input type="submit" @click="registerByEmail" name="" value="注册" class="am-btn am-btn-primary am-btn-sm am-fl">
                            </div>

                        </div>
                        <!--手机注册-->
                        <div class="am-tab-panel">
                            <form method="post">
                                <div class="user-phone">
                                    <label for="phone"><i class="am-icon-mobile-phone am-icon-md"></i></label>
                                    <input type="tel" v-model="phoneUserForm.phone" name="" id="phone" placeholder="请输入手机号">
                                </div>
                                <div class="user-phone">
                                    <label for="imageCode"><i class="am-icon-check am-icon-sm"></i></label>
                                    <input type="text" name="" style="width: 180px;" v-model="phoneUserForm.imageCode"
                                           id="imageCode" placeholder="请输入图片验证码">
                                    <img id="captcha-image-temp" @click="getImgCode" :src="imgCodeSrc"
                                         class="captcha-image-temp" alt="点击换图" title="点击换图"
                                         style="vertical-align: middle; cursor: pointer;">
                                </div>
                                <div class="verification">
                                    <label for="code"><i class="am-icon-code-fork"></i></label>
                                    <input type="tel" name="" v-model="phoneUserForm.code" id="code" placeholder="请输入验证码">
                                    <button type="button" class="btn" href="javascript:void(0);" @click="sendMobileCode"
                                       id="sendMobileCode">
                                        获取</button>
                                </div>
                                <!--<div class="user-pass">
                                    <label for="password"><i class="am-icon-lock"></i></label>
                                    <input type="password" name="" v-model="phoneUserForm.password" id="password" placeholder="设置密码">
                                </div>
                                <div class="user-pass">
                                    <label for="passwordRepeat"><i class="am-icon-lock"></i></label>
                                    <input type="password" name="" v-model="phoneUserForm.passwordRepeat" id="passwordRepeat" placeholder="确认密码">
                                </div>-->
                            </form>
                            <div class="login-links">
                                <label for="reader-me">
                                    <input id="reader-me" type="checkbox" v-model="phoneUserForm.flag"> 点击表示您同意商城《服务协议》
                                </label>
                            </div>
                            <div class="am-cf">
                                <input type="submit" name="" @click="register" value="注册" class="am-btn am-btn-primary am-btn-sm am-fl">
                            </div>

                            <hr>
                        </div>



                    </div>
                </div>

            </div>
        </div>

        <div class="footer ">
            <div class="footer-hd ">
                <p>
                    <a href="# ">恒望科技</a>
                    <b>|</b>
                    <a href="# ">商城首页</a>
                    <b>|</b>
                    <a href="# ">支付宝</a>
                    <b>|</b>
                    <a href="# ">物流</a>
                </p>
            </div>
            <div class="footer-bd ">
                <p>
                    <a href="# ">关于恒望</a>
                    <a href="# ">合作伙伴</a>
                    <a href="# ">联系我们</a>
                    <a href="# ">网站地图</a>
                    <em>© 2015-2025 Hengwang.com 版权所有. 更多模板 <a href="http://www.cssmoban.com/" target="_blank"
                                                                       title="模板之家">模板之家</a> - Collect from <a
                            href="http://www.cssmoban.com/" title="网页模板" target="_blank">网页模板</a></em>
                </p>
            </div>
        </div>
	</div>>
    </div>
</body>
<script>
    $(function () {
        $('#doc-my-tabs').tabs();
    })
</script>

<script type="text/javascript">
	new Vue({
		el:'#app',
		data:{
			phoneUserForm:{
				phone:'',
				imageCode:'',
                code:'',
                flag:false
			},
            emailUserForm:{
                email:'',
                vcode:'',
                password:'',
                passwordRepeat:'',
                flag:false
            },
            flag: false,
            imgCodeSrc:'',
            imgCodeFix:"data:image/jpg;base64,",
		},
        methods: {
            //生成一个uuid
            createUuid() {
                var s = [];
                var hexDigits = "0123456789abcdefghi";
                for (var i = 0; i < 36; i++) {
                    s[i] = hexDigits.substr(Math.floor(Math.random() * 0x10), 1);
                }
                s[14] = "4"; // bits 12-15 of the time_hi_and_version field to 0010
                s[19] = hexDigits.substr((s[19] & 0x3) | 0x8, 1); // bits 6-7 of the clock_seq_hi_and_reserved to 01
                s[8] = s[13] = s[18] = s[23] = "-";
                var uuid = s.join("");
                return uuid;
            },
            //获得图片验证码
            getImgCode() {
                //获取值
                let value = sessionStorage.getItem("imgCodeKey")
                //判断获取的值是否存在
                if (!value || value == '') {
                    //不存在就生成一个uuid,存入session
                    value = this.createUuid()
                    sessionStorage.setItem("imgCodeKey", value)
                }
                console.log(22)
                let parma={
                    key:value,
                    phone:this.phoneUserForm.phone
                }
                console.log(11)
                //发送请求获取图片验证码
                this.$http.post("/vcode/getImgVCode",parma).then(res => {
                    console.log(res.data.data)
                    //回显图片
                    this.imgCodeSrc = this.imgCodeFix + res.data.data
                })
            },
            //发送邮箱验证码
            sendEmailCode() {
                console.log(this.emailUserForm)
                let data = {email: this.emailUserForm.email}
                this.$http.post("/vcode/getEmailVCode", data).then(res => {
                    if (res.data.flag) {
                        this.$notify.info({
                            title: '成功',
                            message: '验证码已发送',
                            type: 'success'
                        });
                    } else {
                        this.$notify.info({
                            title: '错误',
                            message: res.data.msg,
                            type: 'success'
                        });
                    }

                })
            },
            //发送手机验证码
            sendMobileCode(event) {
                //1.判断手机号不为空
                if (!this.phoneUserForm.phone) {
                    this.$notify.info({
                        title: '错误',
                        message: '手机号不能为空',
                        type: 'warning'
                    });
                    return;
                }
                //2.判断图片验证码不为空
                if (!this.phoneUserForm.imageCode) {
                    this.$notify.info({
                        title: '错误',
                        message: '图片验证码不能为空',
                        type: 'warning'
                    });
                    return;
                }
                //3.获取按钮，禁用按钮
                var sendBtn = $(event.target);
                sendBtn.attr("disabled", true);

                var param = {
                    phone: this.phoneUserForm.phone,
                    imageCode: this.phoneUserForm.imageCode,
                    imageCodeKey: sessionStorage.getItem("imgCodeKey") //"reg_xxxx"
                };


                //4.发送ajax请求
                this.$http.post("/vcode/getPhoneVcode", param).then(res => {
                    var ajaxResult = res.data;
                    console.log(ajaxResult)
                    if (ajaxResult.flag) {
                        this.$notify.info({
                            title: '成功',
                            message: '验证码已发送',
                            type: 'success'
                        });
                        //4.1.发送成：倒计时
                        var time = 1;

                        var interval = window.setInterval(function () {
                            //每一条倒计时减一
                            time = time - 1;
                            //把倒计时时间搞到按钮上
                            sendBtn.html(time);
                            //4.2.倒计时完成恢复按钮
                            if (time <= 0) {
                                sendBtn.html("获取");
                                sendBtn.attr("disabled", false);
                                //清除定时器
                                window.clearInterval(interval);
                            }
                        }, 1000);
                    } else {
                        //4.3.发送失败：提示，恢复按钮
                        sendBtn.attr("disabled", false);
                        this.$notify.info({
                            title: '错误',
                            message: ajaxResult.msg,
                            type: 'warning'
                        });
                    }
                })
            },
            //手机注册
            register() {
                if (!this.phoneUserForm.flag) {
                    this.$notify.info({
                        title: '错误',
                        message: '请阅读并勾选服务协议',
                        type: 'warning'
                    });
                    return
                }
                this.$http.post("/register/phone", this.phoneUserForm).then(res => {
                    console.log(res)
                    if (!res.data.flag) {
                        this.$notify.info({
                            title: '错误',
                            message: res.data.msg,
                            type: 'warning'
                        });
                    }else {
                       location.href="http://localhost:8081/dept"
                    }
                })
            },
            //邮箱注册
            registerByEmail(){
                console.log(this.emailUserForm.flag)
                if (!this.emailUserForm.flag){
                    this.$notify.info({
                        title: '错误',
                        message: '请阅读并勾选服务协议',
                        type:'warning'
                    });
                    return
                }
                this.$http.post("/register/email",this.emailUserForm).then(res=>{
                    console.log(res)
                    if (!res.data.flag){
                        this.$notify.info({
                            title: '错误',
                            message: res.data.msg,
                            type:'warning'
                        });
                    }else {
                        this.$notify.info({
                            title: '成功',
                            message: res.data.msg,
                            type:'success'
                        });
                    }

            })
        },

        }
    ,
        mounted() {
            console.log(33)
            this.getImgCode()
        }})

</script>


</html>